package com.gable.exhibition.service;

import com.gable.common.util.ReturnResultUtil;
import com.gable.exhibition.view.AppointView;
import com.gable.exhibition.view.ParameterView;
import com.gable.exhibition.view.PartView;

import java.util.Map;

/**
 * Created by Lesson on 2018/2/6.
 */
public interface BaseService {

    /**
     * 获取医院列表
     * @Create user jacky
     * @Create date 2018/2/6
     * @return
     */
    ReturnResultUtil queryHospitalBy(Map map);

    /**
     * 获取厂商列表
     * @Create user jacky
     * @Create date 2018/2/6
     * @return
     */
    ReturnResultUtil queryManufacturer(Map map);

    /**
     * 获取维修商列表
     * @Create user jacky
     * @Create date 2018/2/6
     * @return
     */
    ReturnResultUtil queryMaintainer();

    /**
     * 获取省份列表
     * @Create user jacky
     * @Create date 2018/2/6
     * @return
     */
    ReturnResultUtil queryProvince();

    /**
     * 获取城市列表
     * @param provinceId
     * @Create user jacky
     * @Create date 2018/2/6
     * @return
     */
    ReturnResultUtil queryCity(Long provinceId);

    /**
     * 查询区域列表
     * @param map  provinceId,cityId
     * @Create user jacky
     * @Create date 2018/2/6
     * @return
     */
    ReturnResultUtil queryArea(Map map);

    /**
     * 获取字典表类型的数据
     * @param type
     * @Create user jacky
     * @Create date 2018/2/6
     * @return
     */
    ReturnResultUtil queryItem(String type);

    /**
     * 获取68分类一级
     * @Create user jacky
     * @Create date 2018/2/23
     * @return
     */
    ReturnResultUtil queryDeviceType();

    /**
     * 获取68分类二级
     * @param parentId
     * @Create user jacky
     * @Create date 2018/2/23
     * @return
     */
    ReturnResultUtil queryDeviceTypeSub(Long parentId);

    /**
     * 获取文件类型列表
     * @param fileType
     * @Create user jacky
     * @Create date 2018/2/24
     * @return
     */
    ReturnResultUtil queryFileType(String fileType);

    /**
     * 根据设备ID查询维修需要的厂商信息
     * @param deviceId
     * @return
     */
    ReturnResultUtil queryManufacturerByDeviceId(Long deviceId);

    /**
     * 根据厂家ID查询维修商信息
     * @param manufacturerId
     * @return
     */
    ReturnResultUtil getListByManufacturerId(Long manufacturerId);

    /**
     * 根据来源id和来源类型获取该备件信息
     * @param partView
     * @Create date 2018/3/2
     * @Create user jacky
     * @return
     */
    ReturnResultUtil queryPartList(PartView partView);

    /**
     * 根据厂商id获取下面对应的维修商列表
     * @param manufacturerId
     * @Create date 2018/3/5
     * @Create user jacky
     * @return
     */
    ReturnResultUtil queryMinListByMamuId(Long manufacturerId);

    /**
     * 查询供应商列表用于select选择
     * @param map
     * @Create user jacky
     * @Create date 2018/3/13
     * @return
     */
    ReturnResultUtil querySupplier(Map map);

    /**
     * 查询卫计委列表用于select选择
     * @param map
     * @Create user jacky
     * @Create date 2018/3/13
     * @return
     */
    ReturnResultUtil queryCommission(Map map);

    /**
     *根据医院ID查询维修商信息
     * @param parameter
     * @return
     */
    ReturnResultUtil getMaintainerByHospitalId( ParameterView parameter);

    ReturnResultUtil queryByRepairId(AppointView appoint);



    /**
     * 根据关键字模糊查询维修商，自动补全
     * @param map
     * @Create user jacky
     * @Create date 2018/3/22
     * @return
     */
    ReturnResultUtil queryMaintainerByCompletion(Map map);

    /**
     * 手机号码工程师名称自动补全
     * @param map
     * @return
     */
    ReturnResultUtil phoneCompletion(Map map);
}
